This invention relates to data processing and in particular to data storage and database management systems.
In our GB Patent Application GB 9818819.6 (C1398) (corresponding to U.S. application Ser. No. 09/354,035 filed on Jul. 15, 1999, and European Published Application Serial No. 0984369) there is disclosed a time-versioned data storage mechanism that supports the ability to view the state of the data from any selected point in time, and also permits changes to be made to past and future states not just the current state. In this prior application a single computer system with a single database was considered. The present invention is, however, concerned with multiple computer systems and one or more databases.
According to one aspect of the invention there is provided a data processing apparatus comprising one or more databases for storing respective pluralities of records and a plurality of user systems capable of accessing the one or more databases, wherein the user systems each comprise a respective datastore/application environment instance with which users may interface, wherein the datastores contain time-versioned views of records, wherein the data processing apparatus is operable in at least two modes, a normal operation mode in which records relevant to a current viewpoint time and time span are accessed and employed in an evaluation in response to a user enquiry, and a recovery operation mode in which records relevant to a viewpoint time and time span for a previous evaluation are accessed and employed to reproduce exactly the previous evaluation, and wherein the time-versioned views of records each include
(a) at least one attribute;
(b) a time span indicating the time span for which the attribute is valid;
(c) a creation time indicating when the record was created, and
(d) a type field indicating whether the record is a concrete record, or a delta record that possibly modifies the attribute value of a previous concrete or delta record.
According to another aspect of the invention there is provided a data processing method comprising storing respective pluralities of records in one or more databases, and permitting a user to access the one or more databases by means of a respective one of a plurality of user systems, each comprising a respective datastore/application environment instance with which users may interface, the datastores containing time-versioned views of records, wherein there are at least two modes for data processing, a normal mode in which records relevant to a current viewpoint time and time span are accessed and employed in an evaluation in response to a user enquiry, and a recovery mode in which records relevant to a viewpoint time and time span for a previous evaluation are accessed and employed to reproduce exactly the previous evaluation, and wherein the time-versioned views of the records each include
(a) at least one attribute;
(b) a time span indicating the time span for which the attribute is valid;
(c) a creation time indicating when the record was created, and
(d) a type field indicating whether the record is a concrete record, or a delta record that possibly modifies the attribute value of a previous concrete or delta record.
According to a further aspect of the invention there is provided an information carrier holding a program for performing a data processing method, the method comprising storing respective pluralities of records in one or more databases, and permitting a user to access the one or more databases by means of a respective one of a plurality of user systems, each comprising a respective datastore/application environment instance with which users may interface, the datastores containing time-versioned views of records, wherein there are at least two modes for data processing, a normal mode in which records relevant to a current viewpoint time and time span are accessed and employed in an evaluation in response to a user enquiry, and a recovery mode in which records relevant to a viewpoint time and a time span for a previous evaluation are accessed and employed to reproduce exactly the previous evaluation, and wherein the time-versioned view of records each include
(a) at least one attribute;
(b) a time span indicating the time span for which the attribute is valid;
(c) a creation time indicating when the record was created, and
(d) a type field indicating whether the record is a concrete record, or a delta record that possibly modifies the attribute value of a previous concrete or delta record.